package com.baidu.encrypt.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.Date;

/**
 * 模型服务信息表实体
 */
@Data
@TableName(value = "model_service_info")
@Schema(name = "ModelServiceInfo", description = "模型服务信息实体类，存储模型训练或测试用样本数据的元信息")
public class ModelServiceInfo {

    @Schema(description = "主键ID（自增）", example = "4001", type = "Long")
    @TableId(type = IdType.AUTO)
    private Long id; // 主键ID

    @Schema(description = "创建人", example = "data_analyst", type = "String")
    private String createdBy; // 创建人

    @Schema(description = "创建时间", example = "2024-02-15T10:30:00", type = "Date")
    private Date createdTime; // 创建时间

    @Schema(description = "更新人", example = "data_quality", type = "String")
    private String updatedBy; // 更新人

    @Schema(description = "更新时间", example = "2024-02-16T14:20:00", type = "Date")
    private Date updatedTime; // 更新时间

    @Schema(description = "加密字段(保证数据完整性)", example = "d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1", type = "String")
    private String sm3; // 加密字段(保证数据完整性)

    @Schema(description = "项目ID", example = "PROJ_SAMPLE_789", type = "String")
    private String projectId; // 项目ID

    @Schema(description = "名称", example = "用户行为预测样本集V1", type = "String")
    private String name; // 名称

    @Schema(description = "编码", example = "user_behavior_prediction", type = "String")
    private String code; // 编码

    @Schema(description = "启动状态", example = "0:停止 1:启动", type = "Integer")
    private String startStopStatus; // 启动状态  0:停止 1:启动

    @Schema(description = "来源", example = "模型来源", type = "String")
    private String source; // 来源

    @Schema(description = "模型ID", example = "1212", type = "Long")
    private String modelId; // 模型ID


}